Methods

Analysis was completed in R v3.4.3 [5] using the following packages.

library(tidyverse)
library(phyloseq)
library(ggplot2)
library(dplyr)
library(stringr)
library(magrittr)
library(knitr)
library(gridExtra)
library(grid)
library(randomcoloR)

Data cleaning

Generate a random colour palette for use in figures.

palette <- distinctColorPalette(40)

Data were loaded into R and samples normalized to 100,000 sequences per sample. Reproducibility was kept by setting a random seed.

load("mothur_phyloseq.RData")
load("qiime2_phyloseq.RData")

set.seed(4831)
m.norm = rarefy_even_depth(mothur, sample.size=100000)
q.norm = rarefy_even_depth(qiime2, sample.size=100000)

Relative abundance percentages were calculated for the data.

m.percent = transform_sample_counts(m.norm, function(x) 100 * x/sum(x))
q.percent = transform_sample_counts(q.norm, function(x) 100 * x/sum(x))

Chloroflexi phylum was chosen.

phylum_name_mothur = "Chloroflexi"
phylum_name_qiime2 = "D_1__Chloroflexi"

Results

Change of microbial community structure with depth and oxygen concentration

Alpha-diversity

Shannon’s diversity index and Chao1 were calculated for the total microbial community across depth and oxygen concentration gradients for both mothur and QIIME2.

# Alpha-diversity of total community for mothur
m.alpha = estimate_richness(m.norm, measures = c("Chao1", "Shannon"))

m.meta.alpha = full_join(rownames_to_column(m.alpha),
  rownames_to_column(data.frame(m.percent@sam_data)), by = "rowname")

m.shannon.depth.plot <- m.meta.alpha %>% 
  ggplot() +
    geom_point(aes(x=Depth_m, y=Shannon)) +
    geom_smooth(method='auto', aes(x=as.numeric(Depth_m), y=Shannon)) +
    labs(title="Mothur", y="Shannon's diversity index", x=NULL)

m.chao1.depth.plot <- m.meta.alpha %>% 
  ggplot() +
    geom_point(aes(x=Depth_m, y=Chao1)) +
    geom_smooth(method='auto', aes(x=as.numeric(Depth_m), y=Chao1)) +
    labs(title="Mothur", y="Chao1 richness estimator", x="Depth (m)")

m.shannon.o2.plot <- m.meta.alpha %>% 
  ggplot() +
    geom_point(aes(x=O2_uM, y=Shannon)) +
    # geom_smooth(method='auto', aes(x=as.numeric(O2_uM), y=Shannon)) +
    labs(title="Mothur", y="Shannon's diversity index", x=NULL)

m.chao1.o2.plot <- m.meta.alpha %>% 
  ggplot() +
    geom_point(aes(x=O2_uM, y=Chao1)) +
    # geom_smooth(method='auto', aes(x=as.numeric(O2_uM), y=Chao1)) +
    labs(title="Mothur", y="Chao1 richness estimator", x="Oxygen (uM)")

# Alpha-diversity of total community for qiime2
q.alpha = estimate_richness(q.norm, measures = c("Chao1", "Shannon"))

q.meta.alpha = full_join(rownames_to_column(q.alpha),
  rownames_to_column(data.frame(q.percent@sam_data)), by = "rowname")

q.shannon.depth.plot <- q.meta.alpha %>% 
  ggplot() +
    geom_point(aes(x=Depth_m, y=Shannon)) +
    geom_smooth(method='auto', aes(x=as.numeric(Depth_m), y=Shannon)) +
    labs(title="Qiime2", y=NULL, x=NULL)

q.chao1.depth.plot <- q.meta.alpha %>% 
  ggplot() +
    geom_point(aes(x=Depth_m, y=Chao1)) +
    geom_smooth(method='auto', aes(x=as.numeric(Depth_m), y=Chao1)) +
    labs(title="Qiime2", y=NULL, x="Depth (m)")

q.shannon.o2.plot <- q.meta.alpha %>% 
  ggplot() +
    geom_point(aes(x=O2_uM, y=Shannon)) +
    # geom_smooth(method='auto', aes(x=as.numeric(O2_uM), y=Shannon)) +
    labs(title="Qiime2", y=NULL, x=NULL)

q.chao1.o2.plot <- q.meta.alpha %>% 
  ggplot() +
    geom_point(aes(x=O2_uM, y=Chao1)) +
    # geom_smooth(method='auto', aes(x=as.numeric(O2_uM), y=Chao1)) +
    labs(title="Qiime2", y=NULL, x="Oxygen (uM)")
# Plotting depth graph
grid.arrange(m.shannon.depth.plot, q.shannon.depth.plot, m.chao1.depth.plot, q.chao1.depth.plot, ncol=2, top=textGrob("Figure 1 Alpha-diversity across Depth",gp=gpar(fontsize=16,font=3)))

The same patterns of alpha-diversity (Shannon’s diversity index and the Chao1 richness estimator) can be observed across depth for both mothur and QIIME2 (Fig. 1). There is a slightly lower diversity in surface waters (0m) compared to 100m depth. Peak diversity is reached at ~100-120m and diversity decreases with greater depth, with a slight increase at 200m for all but Shannon’s diversity index for QIIME2.

Note, however, that despite the similarity in the alpha-diversity pattern, the comparison of mothur versus QIIME2 shows difference: across all depths, mothur OTU analysis resulted in a lower alpha-diversity than the QIIME2 ASV analysis when measured with the Shannon’s diversity index and a higher alpha-diversity than the QIIME2 ASV analysis when measured with Chao1.

# Plotting oxygen graph
grid.arrange(m.shannon.o2.plot, q.shannon.o2.plot, m.chao1.o2.plot, q.chao1.o2.plot, ncol=2, top=textGrob("Figure 2 Alpha-diversity across Oxygen Concentration",gp=gpar(fontsize=16,font=3)))

Looking at Shannon’s diversity across oxygen concentration (Fig. 2), we find that at equivalent depths QIIME2 has a greater diversity than mothur. However, the pattern exhibited by both mothur and QIIME2 data is still similar. The three lowest diversity points (note for mothur: 2 points at 2.35 overlap) are at an oxygen concentration of 0 uM, while the highest diversity is found at an oxygen concentration of ~38 uM. The band of 95% confidence intervals was not plotted due to the lack of data between ~38 uM and ~217 uM of oxygen.

Comparing Chao1 at different oxygen levels for mothur and QIIME2 shows that the patterns differ. While the three lowest diversity points are still at 0 uM of oxygen, for mothur the highest diversity in terms of Chao1 is at an oxygen concentration of ~38 uM, while for QIIME2 it is at an oxygen concentration of ~32uM. For both, oxygen concentration of ~217 uM shows a notable decrease in diversity compared to lower, non-zero oxygen concentrations. Chao1 exhibited a greater drop at ~217 uM of oxygen compared to Shannon.

Taxonomic community composition

# Mothur
m.phyla.plot = m.percent %>%
  plot_bar(fill="Phylum")+
    geom_bar(aes(fill=Phylum), stat="identity")+
    labs(title="Figure 3 Phyla across Samples for Mothur", y="Abundance (%)")+ 
    scale_fill_manual(values=palette)

# QIIME2
q.phyla.plot = q.percent %>%
  plot_bar(fill="Phylum")+
    geom_bar(aes(fill=Phylum), stat="identity")+
    labs(title="Figure 4 Phyla across Samples for QIIME2", y="Abundance (%)")+
    scale_fill_manual(values=palette)



28 and 29 taxons were identified at the phylum level with Mothur and QIIME2, respectively (Fig. 3,4). Out of these identified phyla in both mothur and QIIME2, ~4 dominated the community composition in terms of abundance: Proteobacteria, Bacteroidetes, Thaumarchaeota and Actinobacteria (from most to less abundant). Other phyla that are noticeably more abundant include Cyanobacteria, Deferribacteres, Euryarchaeota, Firmiucutes, Gemmatimonadetes, Marinimicrobia, Nitrospinae, Planctomycetes and Verrucomicrobia. Our phylum of interest, Chloroflexi, makes up from 0 to 6% of the microbial community in the collected samples depending on depth. A more specific naming system seems to be used by mothur than QIIME2, which results in a more descriptive labelling of the population composition in the former.

Chloroflexi abundance with depth and oxygen concentration

# Significance across depth
m.chlor.lm = m.norm %>% 
  subset_taxa(Phylum==phylum_name_mothur) %>% 
  tax_glom(taxrank = 'Phylum') %>%
  psmelt() %>%
  lm(Abundance ~ Depth_m, .) %>% 
  summary()

q.chlor.lm = q.norm %>% 
  subset_taxa(Phylum==phylum_name_qiime2) %>% 
  tax_glom(taxrank = 'Phylum') %>%
  psmelt() %>%
  lm(Abundance ~ Depth_m, .) %>% 
  summary()

taxon.abundance = data.frame("Estimate" = numeric(0), "Std. Error"= numeric(0),"t value"= numeric(0),"Pr(>|t|)"= numeric(0))
taxon.abundance <- rbind(taxon.abundance, m.chlor.lm$coefficients["Depth_m",])
taxon.abundance <- rbind(taxon.abundance, q.chlor.lm$coefficients["Depth_m",])
rownames(taxon.abundance) <- (c("mothur", "qiime2"))
colnames(taxon.abundance) <- (c("Estimate", "Std. Error","t value","Pr(>|t|) (p-value)"))
kable(taxon.abundance,caption="Table 1 Correlation Data of Chloroflexi Phylum across Depth")
Table 1 Correlation Data of Chloroflexi Phylum across Depth
Estimate Std. Error t value Pr(>|t|) (p-value)
mothur 1.327529 0.6389862 2.077554 0.0923485
qiime2 2.622128 0.4212043 6.225311 0.0015644
m.abd.depth.plot <- m.percent %>% 
  subset_taxa(Phylum==phylum_name_mothur) %>% 
  psmelt() %>% 
  group_by(Sample) %>% 
  summarize(Abundance_sum=sum(Abundance), Depth_m=mean(Depth_m)) %>% 
  
ggplot() +
  geom_point(aes(x=Depth_m, y=Abundance_sum)) +
  geom_smooth(method='lm', aes(x=as.numeric(Depth_m), y=Abundance_sum)) +
  labs(title="Mothur", y="Abundance (%)", x="Depth (m)")

q.abd.depth.plot <- q.percent %>% 
  subset_taxa(Phylum==phylum_name_qiime2) %>% 
  psmelt() %>% 
  group_by(Sample) %>% 
  summarize(Abundance_sum=sum(Abundance), Depth_m=mean(Depth_m)) %>% 
  
ggplot() +
  geom_point(aes(x=Depth_m, y=Abundance_sum)) +
  geom_smooth(method='lm', aes(x=as.numeric(Depth_m), y=Abundance_sum)) +
  labs(title="QIIME2", y=NULL, x="Depth (m)")
# Significance across oxygen concentrations
m.chlor.lm.ox = m.norm %>% 
  subset_taxa(Phylum==phylum_name_mothur) %>% 
  tax_glom(taxrank = 'Phylum') %>%
  psmelt() %>%
  lm(Abundance ~ O2_uM, .) %>% 
  summary()

q.chlor.lm.ox = q.norm %>% 
  subset_taxa(Phylum==phylum_name_qiime2) %>% 
  tax_glom(taxrank = 'Phylum') %>%
  psmelt() %>%
  lm(Abundance ~ O2_uM, .) %>% 
  summary()

taxon.abundance.ox = data.frame("Estimate" = numeric(0), "Std. Error"= numeric(0),"t value"= numeric(0),"Pr(>|t|)"= numeric(0))
taxon.abundance.ox <- rbind(taxon.abundance.ox, m.chlor.lm.ox$coefficients["O2_uM",])
taxon.abundance.ox <- rbind(taxon.abundance.ox, q.chlor.lm.ox$coefficients["O2_uM",])
rownames(taxon.abundance.ox) <- (c("mothur", "qiime2"))
colnames(taxon.abundance.ox) <- (c("Estimate", "Std. Error","t value","Pr(>|t|) (p-value)"))
kable(taxon.abundance.ox,caption="Table 2 Correlation Data of Chloroflexi Phylum across Oxygen Concentration")
Table 2 Correlation Data of Chloroflexi Phylum across Oxygen Concentration
Estimate Std. Error t value Pr(>|t|) (p-value)
mothur -0.750471 0.5865861 -1.279387 0.2569128
qiime2 -1.731996 0.5762708 -3.005525 0.0299088
m.abd.o2.plot <- m.percent %>% 
  subset_taxa(Phylum==phylum_name_mothur) %>% 
  psmelt() %>% 
  group_by(Sample) %>% 
  summarize(Abundance_sum=sum(Abundance), O2_uM=mean(O2_uM)) %>% 
  
ggplot() +
  geom_point(aes(x=O2_uM, y=Abundance_sum)) +
  geom_smooth(method='lm', aes(x=as.numeric(O2_uM), y=Abundance_sum)) +
  labs(title="Mothur", y="Abundance (%)", x="O2 (uM)")

q.abd.o2.plot <- q.percent %>% 
  subset_taxa(Phylum==phylum_name_qiime2) %>% 
  psmelt() %>% 
  group_by(Sample) %>% 
  summarize(Abundance_sum=sum(Abundance), O2_uM=mean(O2_uM)) %>% 
  
ggplot() +
  geom_point(aes(x=O2_uM, y=Abundance_sum)) +
  geom_smooth(method='lm', aes(x=as.numeric(O2_uM), y=Abundance_sum)) +
  labs(title="QIIME2", y=NULL, x="O2 (uM)")
# Plotting depth graph
grid.arrange(m.abd.depth.plot, q.abd.depth.plot, ncol=2, top=textGrob("Figure 5 Chloroflexi Abundance across Depth",gp=gpar(fontsize=16,font=3)))

# Plotting oxygen graph
grid.arrange(m.abd.o2.plot, q.abd.o2.plot, ncol=2, top=textGrob("Figure 6 Chloroflexi Abundance across Oxygen Concentration",gp=gpar(fontsize=16,font=3)))

Linear regression analysis of Chloroflexi relative abundance across depth revealed variations between Mothur’s OTU and QIIME2’s ASV clustering (Figure 5). ASV clusters revealed a significant correlation (p<0.05), while OTU clusters did not. Both correlations were found to be positive.

Similarly, linear regression analysis across oxygen concentration (Figure 6) revealed significant trends in terms of OTU clusters (p<0.05), but not ASV clusters. Both correlations were found to be negative.

Richness within the Chloroflexi phylum

# Number of OTUs
m.tax_table = data.frame(m.norm@tax_table)
m.filtered = m.tax_table %>% 
  rownames_to_column('OTU') %>%
  filter(Phylum==phylum_name_mothur) %>%
  column_to_rownames('OTU')
m.rownumber = nrow(m.filtered)
# Number of ASVs
q.tax_table = data.frame(q.norm@tax_table)
q.filtered = q.tax_table %>% 
  rownames_to_column('ASV') %>%
  filter(Phylum==phylum_name_qiime2) %>%
  column_to_rownames('ASV')
q.rownumber = nrow(q.filtered)

For Chloroflexi, the number of OTUs was found to be 34, and the number of ASVs was found to be 47.

Change of abundances of OTUs/ASVs within the Chloroflexi phylum with depth and oxygen concentration

# Example for linear model
otu_stats = data.frame("Estimate" = numeric(0), "Std. Error"= numeric(0),"t value"= numeric(0),"Pr(>|t|)"= numeric(0))
for (otu in row.names(m.filtered)){
  linear_fit = m.norm %>% 
    psmelt() %>% 
    filter(OTU==otu) %>% 

    lm(Abundance ~ Depth_m, .) %>% 
    summary()
  otu_data = linear_fit$coefficients["Depth_m",]
  otu_stats <- rbind(otu_stats, otu_data)
}
colnames(otu_stats)<- (c("Estimate", "Std. Error","t value","Pr(>|t|) (p-value)"))
row.names(otu_stats) <- row.names(m.filtered)
sorted = arrange(rownames_to_column(otu_stats),Estimate)%>% column_to_rownames(var="rowname")
lm.depth.otus = kable(sorted,caption="Table 1 Correlation data of Chloroflexi OTUs Abundance with Depth")
# Example for correlation graph
m.percent %>% 
  subset_taxa(Phylum==phylum_name_mothur) %>% 
  psmelt() %>% 
  
  ggplot() +
  geom_point(aes(x=Depth_m, y=Abundance)) +
  geom_smooth(method='lm', aes(x=Depth_m, y=Abundance)) +
  facet_wrap(~OTU, scales="free_y") +
  labs(title="Figure 7 Abundance of Chloroflexi OTUs across Depth") +
  xlab("Depth (m)") + 
  ylab("Abundance (%)") + 
  theme(axis.text.x = element_text(angle = 90))

Linear model statistics were performed for the abundance of each OTU and ASV in relation to depth and oxygen concentration (Appendix A Table 1-4). The linear models were subsequently plotted (Figure 7-10). No significant correlations were found between any individual OTUs/ASVs abundance and depth or oxygen concentration (p > 0.05 for all). Some of the lack of significance could be attributed to the seemingly single outliers visible in many of the plots.

Although none of the correlations were significant, mothur and QIIME2 showed similar trends. For mothur ten of the 34 OTUs had negative correlation between abundance and depth (the rest positive), while for QIIME2 nine of the 47 ASVs had negative correlation between abundance and depth (the rest positive). This was while for abudance versus oxygen concentration, for mothur all OTUs had negative correlation, and for QIIME2 all but one ASVs had negative correlation.

Mothur versus QIIME2

As noted in the different sections, in general, major patterns found in a similar way in both mothur and QIIME2. Nevertheless, mothur and QIIME2 outputted in slightly different results as described in the different parts.

Appendices

Appendix A: Correlation of Chloroflexi OTUs/ASVs Abundance with Depth and Oxygen Concentration

Sorted by correlation

Table 1 Correlation data of Chloroflexi OTUs Abundance with Depth
Estimate Std. Error t value Pr(>|t|) (p-value)
Otu0181 -0.1713584 0.3794814 -0.4515595 0.6704985
Otu1579 -0.0073322 0.0162544 -0.4510917 0.6708136
Otu1149 -0.0035352 0.0082586 -0.4280621 0.6864177
Otu4286 -0.0035352 0.0082586 -0.4280621 0.6864177
Otu1064 -0.0027496 0.0165362 -0.1662767 0.8744539
Otu2632 -0.0023568 0.0055057 -0.4280621 0.6864177
Otu4287 -0.0011784 0.0027529 -0.4280621 0.6864177
Otu2381 -0.0005237 0.0056008 -0.0935100 0.9291298
Otu2592 -0.0005237 0.0056008 -0.0935100 0.9291298
Otu2591 -0.0002619 0.0028004 -0.0935100 0.9291298
Otu1577 0.0001637 0.0036177 0.0452401 0.9656672
Otu3712 0.0008511 0.0055928 0.1521723 0.8850009
Otu3607 0.0034043 0.0023533 1.4465667 0.2076595
Otu2790 0.0034043 0.0023533 1.4465667 0.2076595
Otu3623 0.0036007 0.0053694 0.6705821 0.5322101
Otu4340 0.0068085 0.0047067 1.4465667 0.2076595
Otu2789 0.0068085 0.0047067 1.4465667 0.2076595
Otu1558 0.0070049 0.0049223 1.4231039 0.2139907
Otu1863 0.0079214 0.0046360 1.7086714 0.1482107
Otu3589 0.0136170 0.0094133 1.4465667 0.2076595
Otu1419 0.0136170 0.0094133 1.4465667 0.2076595
Otu2497 0.0136170 0.0094133 1.4465667 0.2076595
Otu1147 0.0146645 0.0110438 1.3278449 0.2416173
Otu1983 0.0158101 0.0123144 1.2838745 0.2554599
Otu1246 0.0158429 0.0092720 1.7086714 0.1482107
Otu1851 0.0170213 0.0117667 1.4465667 0.2076595
Otu0662 0.0340426 0.0235333 1.4465667 0.2076595
Otu0551 0.0365957 0.0465283 0.7865264 0.4671821
Otu1028 0.0374468 0.0258867 1.4465667 0.2076595
Otu0607 0.0389853 0.0438394 0.8892756 0.4145865
Otu0799 0.0477578 0.0280660 1.7016226 0.1495636
Otu0217 0.1946645 0.2102439 0.9258985 0.3969899
Otu0215 0.4527660 0.3129935 1.4465667 0.2076595
Otu0195 0.5344681 0.3694735 1.4465667 0.2076595
Table 2 Correlation Data of Chloroflexi ASVs Abundance with Depth
Estimate Std. Error t value Pr(>|t|) (p-value)
Asv1886 -0.3397709 0.2301978 -1.4759954 0.1999714
Asv800 -0.1327332 0.3683890 -0.3603073 0.7333378
Asv1266 -0.0329951 0.0770801 -0.4280621 0.6864177
Asv1289 -0.0164975 0.0385401 -0.4280621 0.6864177
Asv1979 -0.0057610 0.0616089 -0.0935100 0.9291298
Asv1144 -0.0039280 0.1354082 -0.0290085 0.9779801
Asv341 -0.0035352 0.0082586 -0.4280621 0.6864177
Asv1862 -0.0034043 0.0364052 -0.0935100 0.9291298
Asv1260 -0.0007856 0.0084012 -0.0935100 0.9291298
Asv2081 0.0011129 0.0027583 0.4034830 0.7032691
Asv2034 0.0038298 0.0251674 0.1521723 0.8850009
Asv1142 0.0057610 0.0801057 0.0719180 0.9454553
Asv1046 0.0111293 0.0275831 0.4034830 0.7032691
Asv2247 0.0126023 0.0187931 0.6705821 0.5322101
Asv400 0.0136170 0.0094133 1.4465667 0.2076595
Asv496 0.0136170 0.0094133 1.4465667 0.2076595
Asv2063 0.0189198 0.0468912 0.4034830 0.7032691
Asv134 0.0234043 0.0349014 0.6705821 0.5322101
Asv1473 0.0238298 0.0164733 1.4465667 0.2076595
Asv1794 0.0238298 0.0164733 1.4465667 0.2076595
Asv1234 0.0272340 0.0188267 1.4465667 0.2076595
Asv477 0.0288052 0.0429556 0.6705821 0.5322101
Asv590 0.0306383 0.0211800 1.4465667 0.2076595
Asv1003 0.0306383 0.0211800 1.4465667 0.2076595
Asv1282 0.0340426 0.0235333 1.4465667 0.2076595
Asv490 0.0396072 0.0859823 0.4606434 0.6643958
Asv1664 0.0414075 0.0617486 0.6705821 0.5322101
Asv1939 0.0418331 0.0911012 0.4591934 0.6653680
Asv1163 0.0476596 0.0329467 1.4465667 0.2076595
Asv473 0.0522095 0.0778570 0.6705821 0.5322101
Asv2315 0.0578723 0.0400067 1.4465667 0.2076595
Asv1693 0.0583633 0.0676342 0.8629259 0.4276204
Asv555 0.0748936 0.0517734 1.4465667 0.2076595
Asv1943 0.0792144 0.1181278 0.6705821 0.5322101
Asv428 0.0955810 0.1216822 0.7854968 0.4677332
Asv114 0.1054664 0.1601592 0.6585100 0.5393201
Asv2324 0.1089362 0.0753067 1.4465667 0.2076595
Asv1423 0.1123404 0.0776600 1.4465667 0.2076595
Asv1505 0.1123404 0.0776600 1.4465667 0.2076595
Asv271 0.1361702 0.0941334 1.4465667 0.2076595
Asv208 0.1468412 0.1522869 0.9642409 0.3792105
Asv1095 0.1634043 0.1129601 1.4465667 0.2076595
Asv161 0.1668085 0.1153134 1.4465667 0.2076595
Asv1108 0.1669722 0.1917355 0.8708462 0.4236697
Asv408 0.1859247 0.2109964 0.8811750 0.4185601
Asv1071 0.3438298 0.2376868 1.4465667 0.2076595
Asv1749 0.5208511 0.3600602 1.4465667 0.2076595
Table 3 Correlation Data of Chloroflexi OTUs Abundance with Oxygen Concentration
Estimate Std. Error t value Pr(>|t|) (p-value)
Otu0195 -0.1897296 0.3302310 -0.5745358 0.5904867
Otu0217 -0.1736086 0.1582994 -1.0967102 0.3227568
Otu0215 -0.1607263 0.2797499 -0.5745358 0.5904867
Otu0181 -0.0520091 0.2990620 -0.1739074 0.8687601
Otu0607 -0.0317385 0.0336870 -0.9421584 0.3893700
Otu0551 -0.0269047 0.0362727 -0.7417334 0.4915977
Otu0799 -0.0200649 0.0258114 -0.7773675 0.4721013
Otu1028 -0.0132932 0.0231372 -0.5745358 0.5904867
Otu0662 -0.0120847 0.0210338 -0.5745358 0.5904867
Otu1983 -0.0084593 0.0103315 -0.8187858 0.4501563
Otu1147 -0.0084593 0.0092049 -0.9189965 0.4002601
Otu1246 -0.0072508 0.0084400 -0.8590967 0.4295406
Otu1851 -0.0060423 0.0105169 -0.5745358 0.5904867
Otu1419 -0.0048339 0.0084135 -0.5745358 0.5904867
Otu2497 -0.0048339 0.0084135 -0.5745358 0.5904867
Otu3589 -0.0048339 0.0084135 -0.5745358 0.5904867
Otu1558 -0.0036254 0.0042200 -0.8590967 0.4295406
Otu1863 -0.0036254 0.0042200 -0.8590967 0.4295406
Otu2789 -0.0024169 0.0042068 -0.5745358 0.5904867
Otu4340 -0.0024169 0.0042068 -0.5745358 0.5904867
Otu3623 -0.0024169 0.0042068 -0.5745358 0.5904867
Otu1064 -0.0020728 0.0128145 -0.1617557 0.8778315
Otu1579 -0.0012945 0.0128349 -0.1008584 0.9235824
Otu3712 -0.0012919 0.0043048 -0.3001126 0.7761680
Otu2790 -0.0012085 0.0021034 -0.5745358 0.5904867
Otu3607 -0.0012085 0.0021034 -0.5745358 0.5904867
Otu1577 -0.0009643 0.0027703 -0.3480925 0.7419469
Otu2592 -0.0006367 0.0043341 -0.1469078 0.8889445
Otu2381 -0.0006367 0.0043341 -0.1469078 0.8889445
Otu1149 -0.0004881 0.0065115 -0.0749568 0.9431557
Otu4286 -0.0004881 0.0065115 -0.0749568 0.9431557
Otu2632 -0.0003254 0.0043410 -0.0749568 0.9431557
Otu2591 -0.0003184 0.0021670 -0.1469078 0.8889445
Otu4287 -0.0001627 0.0021705 -0.0749568 0.9431557
Table 4 Correlation Data of Chloroflexi ASVs Abundance with Oxygen Concentration
Estimate Std. Error t value Pr(>|t|) (p-value)
Asv1749 -0.1848957 0.3218175 -0.5745358 0.5904867
Asv408 -0.1764060 0.1570152 -1.1234959 0.3122557
Asv1108 -0.1646951 0.1413959 -1.1647802 0.2966535
Asv208 -0.1439410 0.1112113 -1.2943021 0.2521126
Asv1071 -0.1220553 0.2124416 -0.5745358 0.5904867
Asv428 -0.1061416 0.0879361 -1.2070308 0.2814027
Asv114 -0.0969221 0.1218861 -0.7951862 0.4625657
Asv800 -0.0875482 0.2864534 -0.3056281 0.7722028
Asv161 -0.0592150 0.1030657 -0.5745358 0.5904867
Asv1095 -0.0580065 0.1009624 -0.5745358 0.5904867
Asv1943 -0.0531726 0.0925488 -0.5745358 0.5904867
Asv271 -0.0483387 0.0841353 -0.5745358 0.5904867
Asv1939 -0.0476310 0.0688397 -0.6919125 0.5198017
Asv490 -0.0452141 0.0649448 -0.6961928 0.5173357
Asv1693 -0.0447133 0.0524914 -0.8518223 0.4332067
Asv1505 -0.0398795 0.0694116 -0.5745358 0.5904867
Asv1423 -0.0398795 0.0694116 -0.5745358 0.5904867
Asv2324 -0.0386710 0.0673082 -0.5745358 0.5904867
Asv473 -0.0350456 0.0609981 -0.5745358 0.5904867
Asv1664 -0.0277948 0.0483778 -0.5745358 0.5904867
Asv555 -0.0265863 0.0462744 -0.5745358 0.5904867
Asv1144 -0.0252671 0.1043155 -0.2422180 0.8182327
Asv2063 -0.0205440 0.0357575 -0.5745358 0.5904867
Asv2315 -0.0205440 0.0357575 -0.5745358 0.5904867
Asv477 -0.0193355 0.0336541 -0.5745358 0.5904867
Asv1163 -0.0169186 0.0294474 -0.5745358 0.5904867
Asv134 -0.0157101 0.0273440 -0.5745358 0.5904867
Asv1282 -0.0120847 0.0210338 -0.5745358 0.5904867
Asv1046 -0.0120847 0.0210338 -0.5745358 0.5904867
Asv1142 -0.0112835 0.0618942 -0.1823031 0.8625058
Asv590 -0.0108762 0.0189304 -0.5745358 0.5904867
Asv1003 -0.0108762 0.0189304 -0.5745358 0.5904867
Asv1234 -0.0096677 0.0168271 -0.5745358 0.5904867
Asv1794 -0.0084593 0.0147237 -0.5745358 0.5904867
Asv1473 -0.0084593 0.0147237 -0.5745358 0.5904867
Asv2247 -0.0084593 0.0147237 -0.5745358 0.5904867
Asv1979 -0.0070038 0.0476747 -0.1469078 0.8889445
Asv2034 -0.0058137 0.0193716 -0.3001126 0.7761680
Asv496 -0.0048339 0.0084135 -0.5745358 0.5904867
Asv400 -0.0048339 0.0084135 -0.5745358 0.5904867
Asv1266 -0.0045554 0.0607736 -0.0749568 0.9431557
Asv1862 -0.0041386 0.0281714 -0.1469078 0.8889445
Asv1289 -0.0022777 0.0303868 -0.0749568 0.9431557
Asv2081 -0.0012085 0.0021034 -0.5745358 0.5904867
Asv1260 -0.0009551 0.0065011 -0.1469078 0.8889445
Asv341 -0.0004881 0.0065115 -0.0749568 0.9431557
Asv1886 0.1614351 0.2011515 0.8025547 0.4586642